package cn.dglydrpy.fundmanagement.service;

import cn.dglydrpy.fundmanagement.service.dto.TaxCalculationDto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;

public interface ITaxCalculationService {
    int saveTaxCalculation(TaxCalculationDto taxCalculationDto);
    void updateTaxCalculation(TaxCalculationDto taxCalculationDto);
    void deleteTaxCalculation(Long id);
    TaxCalculationDto getTaxCalculationById(Long id);
    Page<TaxCalculationDto> getTaxCalculationsByConditions(String fundCode, String portfolioId, int pageNo, int pageSize);
    List<TaxCalculationDto> getAllTaxCalculations();
    void calculateTaxForTransaction(Long transactionId);
    void calculateTaxForFund(String fundCode);
    void calculateTaxForPortfolio(Long portfolioId);
}